perm filename ADJUST.SAI[11,ALS] blob
sn#118989 filedate 1974-09-11 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00002 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 BEGIN "ADJUST"
C00006 ENDMK
C⊗;
BEGIN "ADJUST"
DEFINE ⊂="COMMENT"; ⊂ 9/2/73 ADJUSTS INPUT DATA;
DEFINE CR="'15",LF="'12",CRLF="CR&LF",TB="'11";
INTEGER ARRAY INDATA[0:255];
INTEGER ARRAY LFILE[0:'177];
INTEGER ARRAY SUMS[0:23,0:63];
INTEGER I,J,K,L,M,N,P,SEGC,SEGTOT,BRK,EOF,EOFA,BPT,RL;
INTEGER CHAN1,CHAN2, CHAN3,CHAN4;
STRING READ1,FILEI,FILEL,FILLST;
BOOLEAN ER;
STDBRK(1);
SETBREAK(14,"∃",NULL,"INS");
SETBREAK(16,'56,NULL,"INA");
OUTSTR("This program adjusts the input data from the specified file "
&"and creates a new file with extension of T0X."&CRLF);
CHAN1←1; CHAN2←2; CHAN3←3; CHAN4←4;
OPEN(CHAN1,"DSK",'10,10,0,0,0,EOF);
LOOKUP(CHAN1,"NORMAL.DAT",0);
ARRYIN(CHAN1,SUMS[0,0],1536);
CLOSE(CHAN1);
OUTSTR("Data file list (LIST28) = "); FILEL←INCHWL;
IF FILEL="" THEN FILEL←"LIST28";
CLOSE(CHAN2); OPEN(CHAN2,"DSK",1,2,0,3500,BRK,EOFA);
LOOKUP(CHAN2,FILEL,ER);
WHILE ER DO BEGIN OUTSTR(CRLF&"Can't find "&FILEL&" File = ");
LOOKUP(CHAN2,FILEL←INCHWL,ER); END; EOFA←0;
FILLST←INPUT(CHAN2,14); EOFA←0; RL←0; CLOSE(CHAN2);
WHILE EOFA=0 DO BEGIN "LISTREAD"
FILEI←SCAN(FILLST,1,J); IF FILEI="" THEN DONE;
CLOSE(CHAN4); OPEN(CHAN4,"DSK",'10,10,0,0,0,EOF);
LOOKUP(CHAN4,FILEI,ER);
IF EOF≠0 THEN DONE;
ARRYIN(CHAN4,LFILE[0],'200); ⊂ Input header;
SEGTOT←(LFILE[0]*6)%256; SEGC←0;
OUTSTR(FILEI&" "&CVS(SEGTOT)&" seg. ");
READ1←SCAN(FILEI,16,J)&"T0X";
CLOSE(CHAN3); OPEN(CHAN3,"DSK",'10,0,10,0,0,EOF);
ENTER(CHAN3,READ1,BRK); ARRYOUT(CHAN3,LFILE[0],'200);
WHILE TRUE DO BEGIN
FOR I←0 STEP 1 UNTIL 255 DO INDATA[I]←0;
ARRYIN(CHAN4,INDATA[0],256);
BPT←POINT(6,INDATA[0],-1);
FOR I←0 STEP 1 UNTIL 63 DO BEGIN
SEGC←SEGC+1; IF SEGC>SEGTOT THEN DONE;
FOR P←0 STEP 1 UNTIL 23 DO BEGIN
J←ILDB(BPT);
K←SUMS[P,J] LAND '77; DPB(K,BPT); END;
END;
ARRYOUT(CHAN3,INDATA[0],256);
IF SEGC>SEGTOT THEN DONE;
END;
CLOSE(CHAN3); OUTSTR(" Created file "&READ1&CRLF);
IF EOFA≠0 THEN DONE;
END "LISTREAD";
RELEASE(CHAN1); RELEASE(CHAN2); RELEASE(CHAN3); RELEASE(CHAN4);
END "ADJUST";